package com.zhijian.medical.dao.local;

import com.zhijian.medical.entity.po.ProductSendOutDetail;
import com.zhijian.medical.entity.vo.request.ProductSendOutDetailSearchVo;
import com.zhijian.medical.entity.vo.response.ProductSendOutDetailVo;

import java.util.List;

public interface ProductSendOutDetailMapper {
    int deleteByPrimaryKey(Long id);

    int insert(ProductSendOutDetail record);

    int insertSelective(ProductSendOutDetail record);

    ProductSendOutDetail selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(ProductSendOutDetail record);

    int updateByPrimaryKey(ProductSendOutDetail record);

    int count(ProductSendOutDetailSearchVo productSendOutDetailSearchVo);

    List<ProductSendOutDetailVo> selectList(ProductSendOutDetailSearchVo productSendOutDetailSearchVo);

    ProductSendOutDetailVo selectVoById(Long id);

    /**
     * 根据发货号查询单个发货详情
     *
     * @param code
     * @return
     */
    ProductSendOutDetailVo selectVoByCode(String code);

    /**
     * 汇总发货数量
     *
     * @param productSendOutDetailSearchVo
     * @return
     */
    int sumQuantity(ProductSendOutDetailSearchVo productSendOutDetailSearchVo);
}